Network traffic is transmitted across a network, such as the Internet, from a sending system (e.g., a computer system) to a receiving system (e.g., a computer system) via a network interface card (NIC). The NIC is a piece of hardware found in a typical computer system that includes functionality to send and receive network traffic. Typically, network traffic is transmitted in the form of packets, where each packet includes a header and a payload. The header contains information regarding the source address, destination address, size, transport protocol used to transmit the packet, and various other identification information associated with the packet. The payload contains the actual data to be transmitted from the network to the receiving system.
It is often desirable to monitor packets sent by a sender and packets received by a receiver. For example, the monitoring may be performed to ensure that the sender on a sending computer system is not maliciously sending packets, such as by impersonating another sender. Similarly, the monitoring of a receiving computer system may be to ensure that the receiver is not receiving packets that could maliciously alter the receiving computer system.